// 导入 axios
import axios from 'axios'
import nprogress from 'nprogress'
// 导入 nprogress 的样式
import 'nprogress/nprogress.css'

// 创建 axios 实例
const request = axios.create({
  // 请求根路径
  baseURL: 'http://localhost:8888/api',
  // 请求超时毫秒数
  timeout: 30000
})

// 请求拦截器
request.interceptors.request.use((config) => {
  // 在请求发出去前做点什么
  // 指定发送请求体的数据格式
  config.headers['Content-type'] = 'application/json;charset=utf-8'
  // 进度条 动画开始
  nprogress.start()
  return config
})

// 响应拦截器
request.interceptors.response.use((res) => {
  // 在响应回来第一时间做点什么
  // 进度条动画结束
  nprogress.done()
  return res
})

// 向外暴露 axios 实例 request
export default request
